Medical imaging with functional architecture tracking

ABSTRACT

A pre-event connectome of a subject brain is accessed, the pre-event connectome defining i) first functional nodes in the subject brain and ii) first edges that represent connections between the first functional nodes before the subject has undergone an event. A post-event connectome of the subject brain is accessed, the post-event connectome defining i) second functional nodes in the subject brain and ii) second edges that represent connections between the second functional nodes after the subject has undergone the event. A connectome-difference map data is generated that records the difference between the pre-event connectome and the post-event connectome. An action is taken based on the connectome-difference map data.

TECHNICAL FIELD

This specification relates to medical imaging technology.

BACKGROUND

Medical imaging includes the technique and process of creating visualrepresentations of the interior of a body for clinical analysis andmedical intervention, as well as visual representation of the functionof some organs or tissues (physiology). Medical imaging seeks to revealinternal structures hidden by the skin and bones, as well as to diagnoseand treat disease. Medical imaging also establishes a database of normalanatomy and physiology to make it possible to identify abnormalities.

SUMMARY

This specification describes technologies for creating a difference-mapimage showing changes to a brain's functional architecture. Thesetechnologies generally involve comparing a pre-event connectome of thebrain to post-event connectome for the brain. A difference of the twoconnectomes is found that is topologically invariant, allowing thistechnology to function even when a portion of the brain is removed,causing a change in the shape of the brain.

In general, one innovative aspect of the subject matter described inthis specification can be embodied in systems that one or moreprocessors; and computer memory storing instructions that, when executedby the one or more processors, cause the one or more processors toperform operations. The operations include accessing a pre-eventconnectome of a subject brain, the pre-event connectome defining i)first functional nodes in the subject brain and ii) first edges thatrepresent connections between the first functional nodes before thesubject has undergone an event; accessing a post-event connectome of thesubject brain, the post-event connectome defining i) second functionalnodes in the subject brain and ii) second edges that representconnections between the second functional nodes after the subject hasundergone the event; generating a connectome-difference map data thatrecords the difference between the pre-event connectome and thepost-event connectome; and taking an action based on theconnectome-difference map data.

Other embodiments of this aspect include corresponding computer systems,apparatus, and computer programs recorded on one or more computerstorage devices, each configured to perform the actions of the methods.For a system of one or more computers to be configured to performparticular operations or actions means that the system has installed onit software, firmware, hardware, or a combination of them that inoperation cause the system to perform the operations or actions. For oneor more computer programs to be configured to perform particularoperations or actions means that the one or more programs includeinstructions that, when executed by data processing apparatus, cause theapparatus to perform the operations or actions.

The foregoing and other embodiments can each optionally include one ormore of the following features, alone or in combination. In particular,one embodiment includes all the following features in combination. Thefirst functional nodes are the same nodes as the second functionalnodes. The first functional nodes are a superset of the secondfunctional nodes. The event is at least one of the group consisting of:a surgical removal of brain tissue, a traumatic brain injury, abehavioral intervention for the subject, advancement of a medicalcondition that causes cognitive decline, and learning by the subject.The operations further comprising imaging the subject before the eventto generate pre-event brain image data; imaging the subject after theevent to generate post-event brain image data; generating the pre-eventconnectome from the pre-event brain image data; and generating thepost-event connectome from the post-event brain image data. A firstfunctional node and a corresponding second functional node represent thesame point of brain topology, and wherein the first functional node isin a first location in the skull of the subject and the second node isin a second location in the skull of the subject do to a change in brainphysiology as part of the event. The operations further comprisingrendering the connectome-difference map data with an image of thesubject's brain having connections overlaid. The pre-event connectomeand the post-event connectome are topologically invariant. Theoperations further comprising generation of a proposed therapy plan forthe subject based on the connectome-difference map data. The operationsfurther comprising generating a tagged connectome-difference map datathat specifies both the connectome-difference map data and one or morecognitive changes. The operations further comprise adding the taggedconnectome-difference map data to a dataset comprising other taggedconnectome-difference map data; and training a machine-learningclassifier using the dataset. The event is a first event and wherein theoperations further comprising receiving a surgery plan for a secondsubject; determining that the surgery plan is a second event with atleast a threshold similarity to the first event; and returning a reportfor the surgery plan that includes an assessment generated, at least inpart, on the connectome-difference map data. The event is a disease andthe operations further comprise generating a therapy recommendationbased, at least in part, on the connectome-difference map data. Theoperations further comprising generating report-data that includes anexplanation of a change in subject health caused by the event using theconnectome-difference map data.

The subject matter described in this specification can be implemented inparticular embodiments so as to realize one or more of the followingadvantages. The subject matter described in this specification advancesmedical imaging technology, e.g., the technologies of diagnosticassessments, therapeutic interventions, and neurosurgery. Thistechnology allows for images to be created that show the effect of anevent on the brain. The subject matter described in this specificationcan allow for new images useful in a variety of areas. This image cancapture the effect of neurosurgical interventions that require theremoval of brain tissue, causing a difference in shape of the brain.This technology can advantageously automatically account for the changesin shape and correctly show a change in the brain's connectome, evenwhen the change in shape moves a functional node inside the brain of thepatient. A difference-map image made possible by the subject matterdescribed in this specification, and the difference-map from which theimage is rendered may be used to advantageously drive a number ofprocesses. For example, the connectome-difference map can be projectedover an image of the subject's brain to aid in understanding the impactof the event. The connectome-difference map can be used as an input to afunction to generate a proposed therapy plan for the subject, providingnew and better therapy plans than would be available otherwise. Theconnectome-difference map can be used to generate automated data setsthat describe a class of events, providing a deeper and more accuratedata set than would be available otherwise. This technology can beuseful in guiding surgeries, where for a specific patient a cliniciancan learn of deficient networks where little harm will be done andeffective networks worth avoiding and preserving. Patterns of change inthe difference image can be used to identify and classify specificdisease states, including Alzheimer's as one example. Recovery over timecan be monitored for a specific patient, instead of relying on estimatedrecovery timelines. The effectiveness of particular treatments forparticular patients can be monitored.

The details of one or more embodiments of the subject matter of thisspecification are set forth in the accompanying drawings and thedescription below. Other features, aspects, and advantages of thesubject matter will become apparent from the description, the drawings,and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1A and 1B show an example computer system.

FIG. 2 shows an example system for generating medical images withconnectome-difference map generation.

FIG. 3 shows an example of data generated by medical imaging.

FIG. 4 shows an example process of a connectome-difference map beinggenerated and used.

FIG. 5 shows an example process of generating a connectome-differencemap from connectomes.

FIG. 6 shows an example process of automated surgery assessment.

Like reference numbers and designations in the various drawings indicatelike elements.

DETAILED DESCRIPTION

The subject matter described in this specification can subtract aconnectome generated for a subject's brain before an event from aconnectome generated for the same brain after the brain has undergoneone or more events that can cause a change to the brains functionalarchitecture. In this way, the impact of the event on the subject can berecorded and/or visualized into new kinds of images, and/or used asinputs for new types of computational processes able to produce new anduseful outputs not previously possible. These outputs may be usefulalone, or may be useful when combined with human actions. For example, asurgeon that would otherwise plan a surgery based on intuition andtraining can be informed using the subject matter described in thisspecification to generate a surgical-plan assessment based on historic,and objective, data collection and processing.

FIGS. 1A and 1B are block diagrams of a general-purpose computer system100 upon which one can practice arrangements described in thisspecification. The following description is directed primarily to acomputer server module 101. However, the description applies equally orequivalently to one or more remote terminals 168.

As seen in FIG. 1A, the computer system 100 includes: the servercomputer module 101; input devices such as a keyboard 102, a pointerdevice 103 (e.g., a mouse), a scanner 126, a camera 127, and amicrophone 180; and output devices including a printer 115, a displaydevice 114 and loudspeakers 117. An external Modulator-Demodulator(Modem) transceiver device 116 may be used by the computer server module101 for communicating to and from the remote terminal 168 over acomputer communications network 120 via a connection 121 and aconnection 170. The aforementioned communication can take place betweenthe remote terminal 168 and “the cloud” which in the present descriptioncomprises at least the one server module 101. The remote terminal 168typically has input and output devices (not shown) which are similar tothose described in regard to the server module 101. The communicationsnetwork 120 may be a wide-area network (WAN), such as the Internet, acellular telecommunications network, or a private WAN. Where theconnection 121 is a telephone line, the modem 116 may be a traditional“dial-up” modem. Alternatively, where the connection 121 is a highcapacity (e.g., cable) connection, the modem 116 may be a broadbandmodem. A wireless modem may also be used for wireless connection to thecommunications network 120.

The computer server module 101 typically includes at least one processorunit 105, and a memory unit 106. For example, the memory unit 106 mayhave semiconductor random access memory (RAM) and semiconductor readonly memory (ROM). The remote terminal 168 typically includes as leastone processor 169 and a memory 172. The computer server module 101 alsoincludes a number of input/output (I/O) interfaces including: anaudio-video interface 107 that couples to the video display 114,loudspeakers 117 and microphone 180; an I/O interface 113 that couplesto the keyboard 102, mouse 103, scanner 126, camera 127 and optionally ajoystick or other human interface device (not illustrated); and aninterface 108 for the external modem 116 and printer 115. In someimplementations, the modem 116 may be incorporated within the computermodule 101, for example within the interface 108. The computer module101 also has a local network interface 111, which permits coupling ofthe computer system 100 via a connection 123 to a local-areacommunications network 122, known as a Local Area Network (LAN). Asillustrated in FIG. 1A, the local communications network 122 may alsocouple to the wide network 120 via a connection 124, which wouldtypically include a so-called “firewall” device or device of similarfunctionality. The local network interface 111 may include an Ethernetcircuit card, a Bluetooth® wireless arrangement or an IEEE 802.11wireless arrangement; however, numerous other types of interfaces may bepracticed for the interface 111.

The I/O interfaces 108 and 113 may afford either or both of serial orparallel connectivity; the former may be implemented according to theUniversal Serial Bus (USB) standards and having corresponding USBconnectors (not illustrated). Storage memory devices 109 are providedand typically include a hard disk drive (HDD) 110. Other storage devicessuch as a floppy disk drive and a magnetic tape drive (not illustrated)may also be used. An optical disk drive 112 is typically provided to actas a non-volatile source of data. Portable memory devices, such opticaldisks (e.g., CD-ROM, DVD, Blu-ray Disc™), USB-RAM, portable, externalhard drives, and floppy disks, for example, may be used as appropriatesources of data to the system 100.

The components 105 to 113 of the computer module 101 typicallycommunicate via an interconnected bus 104 and in a manner that resultsin a conventional mode of operation of the computer system 100 known tothose in the relevant art. For example, the processor 105 is coupled tothe system bus 104 using a connection 118. Likewise, the memory 106 andoptical disk drive 112 are coupled to the system bus 104 by connections119.

The techniques described in this specification may be implemented usingthe computer system 100, e.g., may be implemented as one or moresoftware application programs 133 executable within the computer system100. In some implementations, the one or more software applicationprograms 133 execute on the computer server module 101 (the remoteterminal 168 may also perform processing jointly with the computerserver module 101), and a browser 171 executes on the processor 169 inthe remote terminal, thereby enabling a user of the remote terminal 168to access the software application programs 133 executing on the server101 (which is often referred to as “the cloud”) using the browser 171.In particular, the techniques described in this specification may beeffected by instructions 131 (see FIG. 1B) in the software 133 that arecarried out within the computer system 100. The software instructions131 may be formed as one or more code modules, each for performing oneor more particular tasks. The software may also be divided into twoseparate parts, in which a first part and the corresponding code modulesperforms the described techniques and a second part and thecorresponding code modules manage a user interface between the firstpart and the user.

The software may be stored in a computer readable medium, including thestorage devices described below, for example. The software is loadedinto the computer system 100 from the computer readable medium, and thenexecuted by the computer system 100. A computer readable medium havingsuch software or computer program recorded on the computer readablemedium is a computer program product. Software modules for that executetechniques described in this specification may also be distributed usinga Web browser.

The software 133 is typically stored in the HDD 110 or the memory 106(and possibly at least to some extent in the memory 172 of the remoteterminal 168). The software is loaded into the computer system 100 froma computer readable medium, and executed by the computer system 100.Thus, for example, the software 133, which can include one or moreprograms, may be stored on an optically readable disk storage medium(e.g., CD-ROM) 125 that is read by the optical disk drive 112. Acomputer readable medium having such software or computer programrecorded on it is a computer program product.

In some instances, the application programs 133 may be supplied to theuser encoded on one or more CD-ROMs 125 and read via the correspondingdrive 112, or alternatively may be read by the user from the networks120 or 122. Still further, the software can also be loaded into thecomputer system 100 from other computer readable media. Computerreadable storage media refers to any non-transitory tangible storagemedium that provides recorded instructions and/or data to the computersystem 100 for execution and/or processing. Examples of such storagemedia include floppy disks, magnetic tape, CD-ROM, DVD, Blu-Ray™ Disc, ahard disk drive, a ROM or integrated circuit, USB memory, amagneto-optical disk, or a computer readable card such as a PCMCIA cardand the like, whether or not such devices are internal or external ofthe computer module 101. Examples of transitory or non-tangible computerreadable transmission media that may also participate in the provisionof software, application programs, instructions and/or data to thecomputer module 101 include radio or infra-red transmission channels aswell as a network connection to another computer or networked device,and the Internet or Intranets including e-mail transmissions andinformation recorded on Websites and the like.

The second part of the application programs 133 and the correspondingcode modules mentioned above may be executed to implement one or moregraphical user interfaces (GUIs) to be rendered or otherwise representedupon the display 114. For example, through manipulation of the keyboard102 and the mouse 103, a user of the computer system 100 and theapplication may manipulate the interface in a functionally adaptablemanner to provide controlling commands and/or input to the applicationsassociated with the GUI(s). Other forms of functionally adaptable userinterfaces may also be implemented, such as an audio interface utilizingspeech prompts output via the loudspeakers 117 and user voice commandsinput via the microphone 180.

FIG. 1B is a detailed schematic block diagram of the processor 105 and a“memory” 134. The memory 134 represents a logical aggregation of all thememory modules (including the HDD 109 and semiconductor memory 106) thatcan be accessed by the computer module 101 in FIG. 1A.

When the computer module 101 is initially powered up, a power-onself-test (POST) program 150 can execute. The POST program 150 can bestored in a ROM 149 of the semiconductor memory 106 of FIG. 1A. Ahardware device such as the ROM 149 storing software is sometimesreferred to as firmware. The POST program 150 examines hardware withinthe computer module 101 to ensure proper functioning and typicallychecks the processor 105, the memory 134 (109, 106), and a basicinput-output systems software (BIOS) module 151, also typically storedin the ROM 149, for correct operation. Once the POST program 150 has runsuccessfully, the BIOS 151 can activate the hard disk drive 110 of FIG.1A. Activation of the hard disk drive 110 causes a bootstrap loaderprogram 152 that is resident on the hard disk drive 110 to execute viathe processor 105. This loads an operating system 153 into the RAMmemory 106, upon which the operating system 153 commences operation. Theoperating system 153 is a system level application, executable by theprocessor 105, to fulfil various high-level functions, includingprocessor management, memory management, device management, storagemanagement, software application interface, and generic user interface.

The operating system 153 manages the memory 134 (109, 106) to ensurethat each process or application running on the computer module 101 hassufficient memory in which to execute without colliding with memoryallocated to another process. Furthermore, the different types of memoryavailable in the system 100 of FIG. 1A must be used properly so thateach process can run effectively. Accordingly, the aggregated memory 134is not intended to illustrate how particular segments of memory areallocated (unless otherwise stated), but rather to provide a generalview of the memory accessible by the computer system 100 and how such isused.

As shown in FIG. 1B, the processor 105 includes a number of functionalmodules including a control unit 139, an arithmetic logic unit (ALU)140, and a local or internal memory 148, sometimes called a cachememory. The cache memory 148 typically includes a number of storageregisters 144-146 in a register section. One or more internal busses 141functionally interconnect these functional modules. The processor 105typically also has one or more interfaces 142 for communicating withexternal devices via the system bus 104, using a connection 118. Thememory 134 is coupled to the bus 104 using a connection 119.

The application program 133 includes a sequence of instructions 131 thatmay include conditional branch and loop instructions. The program 133may also include data 132 which is used in execution of the program 133.The instructions 131 and the data 132 are stored in memory locations128, 129, 130 and 135, 136, 137, respectively. Depending upon therelative size of the instructions 131 and the memory locations 128-130,a particular instruction may be stored in a single memory location asdepicted by the instruction shown in the memory location 130.Alternately, an instruction may be segmented into a number of parts eachof which is stored in a separate memory location, as depicted by theinstruction segments shown in the memory locations 128 and 129.

In general, the processor 105 is given a set of instructions which areexecuted therein. The processor 105 waits for a subsequent input, towhich the processor 105 reacts to by executing another set ofinstructions. Each input may be provided from one or more of a number ofsources, including data generated by one or more of the input devices102, 103, data received from an external source 173, e.g., a brainimaging device 173 such as an Mill or DTI scanner, across one of thenetworks 120, 122, data retrieved from one of the storage devices 106,109 or data retrieved from a storage medium 125 inserted into thecorresponding reader 112, all depicted in FIG. 1A. The execution of aset of the instructions may in some cases result in output of data.Execution may also involve storing data or variables to the memory 134.

Some techniques described in this specification use input variables 154,e.g., data sets characterizing the brain of a patient, which are storedin the memory 134 in corresponding memory locations 155, 156, 157. Thetechniques can produce output variables 161, which are stored in thememory 134 in corresponding memory locations 162, 163, 164. Intermediatevariables 158 may be stored in memory locations 159, 160, 166 and 167.

Referring to the processor 105 of FIG. 1B, the registers 144, 145, 146,the arithmetic logic unit (ALU) 140, and the control unit 139 worktogether to perform sequences of micro-operations needed to perform“fetch, decode, and execute” cycles for every instruction in theinstruction set making up the program 133. Each fetch, decode, andexecute cycle can include i) a fetch operation, which fetches or readsan instruction 131 from a memory location 128, 129, 130; ii) a decodeoperation in which the control unit 139 determines which instruction hasbeen fetched; and iii) an execute operation in which the control unit139 and/or the ALU 140 execute the instruction.

Thereafter, a further fetch, decode, and execute cycle for the nextinstruction may be executed. Similarly, a store cycle may be performedby which the control unit 139 stores or writes a value to a memorylocation 132.

Each step or sub-process in the techniques described in thisspecification may be associated with one or more segments of the program133 and is performed by the register section 144, 145, 146, the ALU 140,and the control unit 139 in the processor 105 working together toperform the fetch, decode, and execute cycles for every instruction inthe instruction set for the noted segments of the program 133. Althougha cloud-based platform has been described for practicing the techniquesdescribed in this specification, other platform configurations can alsobe used. Furthermore, other hardware/software configurations anddistributions can also be used for practicing the techniques describedin this specification.

FIG. 2 shows an example system 200 for generating medical images withconnectome-difference map generation. In the system 200, a medicalimager 202 images a subject 204 before and after an event, or a secondmedical imager (not shown) may be used, and provides data from theimaging to computing apparatus 206 for processing and storage, e.g.,across one or more networks.

The medical imager 202 represents any sort of device that generatesmedical images, including images that are only stored as binary (orsimilar) data and never rendered into a graphical format. Examplesinclude functional magnetic resonance imaging (fMRI) machines, magneticresonance imaging Mill machines, and computed tomography machines. At afirst time, the subject 202 (shown as 202 a at the first time) is imagedby the medical imager 204 (shown as 204 a at the first time) to generatepre-event image data 208. At a later time after the subject hasundergone an event, the subject (shown as 202 b at the later time) isimaged by the same imager 204 (shown as 204 b at the later time) oranother imager (not shown) to generate post-event image data 212. Aswill be appreciated, the pre-event image 208 may be not have beengathered with the intention of being used as a pre-event image asdescribed here. For example, a medical patient may receive imaging forone reason, then later suffer an unexpected brain injury. The previousimage data may then be used as the pre-event (i.e. pre-brain injury)image 208.

The pre-event image 208 can be processed by apparatus 206 into pre-eventconnectome data 210. The post-event image 212 can be processed byapparatus 206 into post-event connectome data 214. For example, timeseries activity can be processed to produce a connectivity correlationmatrix arranged by voxel. These voxels can be grouped to produce groupparcelation connectomes. Examples of such processing can be found, forexample, in U.S. application Ser. Nos. 17/066,171 and 17/066,178, thecontents of which are hereby incorporated by reference.

Apparatus 206 can execute a difference function to generate a connectomedifference map 218 from the pre-event connectome data 210 and thepost-event connectome data 214. For example, the connectome data 210 and214 may be stored on disk in a data structure useful for storingdirected or undirected graphs containing nodes and edges. This caninclude a connectivity matrix, a list of all edges, or hash tables withindexes of the nodes and pointing to linked lists of other nodesconnected to the indexed node, to name a few. As will be understood, themap 218 may be stored on disk as a collection of binary values, andthose binary values can be interpreted by apparatus 206. This map 218may be used as input data for other functions, and/or may be renderedinto one or more rendered difference images 220. For example, apparatus206 can use the map 218 to generate a displayable image (e.g., a JPEG)or interactive interface that shows a two-dimensional matrix with cellsshaded to show corresponding edges displayed in the map 218, and rendera visual representation of the brain (e.g. the pre-event image 208, thepost-event image 212, or a default brain image) with edges of the map218 superimposed over the brain. See, for example, FIG. 3.

As will be appreciated, the speed and scale of data generated in suchprocesses may be quite significant, and producing results inclinically-useful time-frames may require the use of datapro-processing, efficient data networking technologies, and data storagetechniques. For example, the pre-event image 208 and post-event image212 can both require an hour or hours of processing time each to producethe data 210 and 214 when using consumer, off the shelf computingproducts. When faster speed is required, more advanced processing may beaccessed via cloud-provided computational resources. Accessing suchresources provides advantages of producing rendered images 220 inshorter timescales. Which time is a critical factor (e.g., a patientawaiting emergency surgery), slower processing by slower machines orhuman computation may not provide the advantage due to the size andscale of the processing described here.

FIG. 3 shows an example of data generated by medical imaging. Shown hereare three views of the pre-event connectome data 210, the post eventconnectome data 214, and the connectome difference map 218 (includingtwo examples of the rendered difference image 220).

As will be understood the pre-event connectome data 210, the post eventconnectome data 214, and the connectome difference map 218 can be storedon disk as binary digits 210 a, 214 a, 218. In addition, the binarydigits 210 a, 214 a, 218 can be loaded into a processor for computation,transmitted over computer networks, compressed, copied, etc.

In some instances, apparatus 206 can interpret the binary digits 210 a,214 a, and 218 as structured data. For example, apparatus 206 caninterpret the binary digits 210 a as the pre-event connectome 210. Thepre-event connectome data can include data 210 defining i) firstfunctional nodes in the subject brain and ii) first edges that representconnections between the first functional nodes before the subject hasundergone an event. This data may be stored in any suitable datastructure for storing and accessing such data, including but not limitedto an adjacency matrix stored in a .csv file.

In some instances, apparatus 206 can interpret the binary digits 214 aas the post-event connectome 214. This post-event connectome data caninclude data 214 defining i) second functional nodes in the subjectbrain and ii) second edges that represent connections between the secondfunctional nodes after the subject has undergone the event. This datamay be stored in any suitable data structure for storing and accessingsuch data, including but not limited to an adjacency matrix.

In some cases, each node may map 2-to-1 to each parcelation in aparcelation scheme of the brain. However, other arrangements arepossible. For example, a node may represent groups of parcelationschemes. This may be desirable when less detailed information is usefulfor a particular purpose (e.g., showing a rendering at a readableresolution may not require as much detailed connectome data). However,for some other uses (e.g., machine-learning data generation) thehigher-detail 2-to-1 mapping may be more beneficial.

In some cases, the pre-event connectome 210 and the post-eventconnectome 214 are topologically invariant. As will be understood, brainfunction is tied to the two-dimensional topology (i.e. surface shape) ofthe brain, but not to the underlying three-dimensional morphology of thebrain. Some events can change brain morphology (e.g., removal of atumor, some traumatic injuries), which may have topological changes(changes to the two-dimensional surface of the brain) as well asnon-topological changes (changes that do not change the two-dimensionalsurface of the brain. However, these non-topological changes caninfluence the location in three-dimensional space within the subject'sskull, in which a given point of topology resides. For example, removalof a tumor may cause the surrounding brain tissue to sag, maintainingthe same topology but in a new location in the skull.

A first functional node in the pre-event connectome 210 and acorresponding second functional node in the post-event connectome 214can represent the same point of brain topology. When the morphologicalchange occurs without changing the node at issue, the first functionalnode is in a first location in the skull of the subject and the secondnode is in a second location in the skull of the subject due to a changein brain physiology as part of the event. This location may vary inspace as a tumor can change the volume of the brain, or plasticity canre-assign brain tissue to other functions

As such, the pre-event connectome 210 and the post-event connectome 214are topologically invariant. For example, a node in the pre-eventconnectome 210 can have the same topological location as thecorresponding node in the post-event connectome data 214. This ensurethat the connectomes are tied to areas (e.g., parcelations) on thetopology in order to preserve functional features of the brain pre andpost, for example, sagging.

In the pre-event connectome 210 and the post-event connectome 214, thefirst functional nodes may be the same nodes as the second functionalnodes. For example, a given event may not change the topology of thebrain, and may or may not change the functional connections betweenparcelations (represented by the nodes in the data 210 and 214). Anevent that has no effect, then, could produce an identical or nearlyidentical pre- and post-connectome 210 and 214. As will be understood,the volume of data at issue, the noise in the imaging, and biologicalfunctions can influence these processes such that two imaging for theexact same brain, one after another, will not be likely to be the same,digit for digit.

In other cases, the first function nodes may be different than thesecond functional nodes. For example, the first functional nodes may bea superset of the second functional nodes. This may be the case whenfunctional nodes are removed or destroyed by the event. In someexamples, the first function nodes may be a subset of the secondfunctional nodes. This may be the case when functional nodes are createdby the event. In some cases, the first and second function nodes may bea partly overlapping set, such as when some nodes are created and somedestroyed. Events that can change the nodes in the brain include, butare not limited to, tissue growth, spontaneous replacement, therapeuticreplacement, traumatic damage, surgical intervention, and learning. Aswill be appreciated, the event may not necessarily be known or expectedby clinicians or subjects. For example, this technology can be used forroutine imaging and processed, and when significant changes are found,an alert can be generated. This can be used to alert the clinician andthe patient of a potential issue much earlier than would otherwise bepossible.

The connectome-difference map 212 records the difference between thepre-event connectome 210 and the post-event connectome 214. For example,the connectome-difference map 212 can record edges that appear ordisappear between the pre- and post-event connectome data 210 and 214,and may also record changes in weight or one or more edges representingconnections between the nodes (e.g., parcelations). In instances where anode is destroyed by the event, the edges between that node and othernodes may disappear. However, that is not the only possible changecaused by the event. The event may also, or instead, strengthen orweaken the connection between two nodes, and this change in intensitycan be found by finding the difference between edge weights pre- andpost-.

Renderings 210 b, 210 c, 214 b, 214 c, 220 a, and 220 b show examplerendering of the data 210 a, 214 a, and 218. As will be appreciated, thedata stored on disk may be rendered by apparatus 206 into various usefulvisual appearances. The renderings 210 b, 214 b, and 220 a showconnectivity matrixes each containing a two-dimensional grid with colorvalues and/or hues that represent the weight of edges in thecorresponding data 210 a, 214 a, and 218. Renderings 210 c, 214 c, and220 b show (at least a subset) of the edges superimposed over arendering of a brain, with the edges terminating at points in thetopology matching the locations of the nodes the edges connect. It willbe understood that other forms of renderings may be used.

FIG. 4 shows an example process 400 of a connectome-difference map beinggenerated and used. In the process 400, computing apparatus 206generates a difference map from two images of a brain, and then thedifference map is used for a number of uses. As will be understood,other processes may use difference maps for the same, fewer, more, anddifferent uses. Other systems may perform the process 400 or otherprocesses.

Pre-event imaging is performed 408. For example, the volumetric sensor204 can perform one or more fMIR scans of a subject brain to image thesubject before an event to generate a pre-event brain image. In thisexample, the subject is a medical patient preparing to undergo surgeryto remove a brain tumor, and thus the description will continue withthis example. However, the process 400 can be used for other purposes,including in both therapeutic and non-therapeutic contexts. Exampleevents can include, but are not limited to, a surgical removal of braintissue, a traumatic brain injury, a behavioral intervention for thesubject, advancement of a medical condition that causes cognitivedecline, and learning by the subject.

A pre-event connectome of the subject brain is accessed 410. Forexample, computing apparatus 206 can receive the fMRI data from thevolumetric scanner 204 and can generate, from the fMRI data, aconnectome of patient's brain before the surgery removes the tumor.

Post-event imaging is performed 412. For example, the volumetric sensor204 can image the subject after the event to generate a post-event brainimage. This can include performing one or more fMRI scans of thepatient's brain after the tumor has been surgically removed, either withor without a delay to allow time for the patient to recover and healfrom surgery. In some cases, delays for healing can be useful reductionof oedema/swelling post surgery.

A post-event connectome of the subject brain is accessed 414. Forexample, computing apparatus 206 can receive the fMRI data from thevolumetric scanner 204 and can generate, from the fMRI data, aconnectome of patient's brain after the surgery removes the tumor.

A connectome-difference map is generated 416. For example, computingapparatus 206 can compare the pre-event connectome to the post-eventconnectome and generate a record of differences between the twoconnectomes. This connectome-difference, generally speaking, representsthe change to the functionality of the brain due to the event (andpossibly any other intervening activity such as healing, occupationaltherapy after a surgery, pharmacological interventions cotemporaneouswith the surgery, unrelated learning).

With the connectome-difference map, one or more useful processes can beperformed. The following example will list some such useful processes,but it will be appreciated that others are possible.

A proposed therapy plan can be generated for the subject based on theconnectome-difference map 418. For example, therapy management apparatus406, with or without user direction, can access theconnectome-difference map and create, terminate, or alter a proposedtherapy plan for the subject based on data in the connectome-differencemap not previously available. This proposal can include proposals fortherapy plans that include prescribing pharmacological interventions,referring to occupational or physical therapy, modifying an existingtreatment, starting a new treatment, or ending an existing treatment.

The connectome-difference map can be rendered 420 with an image of thesubject's brain having connections overlaid. As previously described,there are multiple ways to render a connectome-difference map. Renderingapparatus 404 can render the difference map overlaid with the brain toaid in understanding of the impact of the event. For example, aclinician can show such a rendering to a patient to help explain theimpact of the event; answer questions about the effects of the event;show why particular functions may or may not have been impaired,enhanced, or changed; etc. This rendering can be overlaid over the brainpre-event, post-event, or both. This can help show the context in whichthe functional changes take place—if many difference were found near atumor, pre-and-post overlays can help show why those functions may havebeen impacted.

A tagged connectome-difference map that specifies both theconnectome-difference map and one or more cognitive changes, the taggedconnectome-difference map can be added to a dataset comprising othertagged connectome-difference maps 424; and a machine-learning classifierusing the dataset can be trained 426. For example, data learningapparatus 402 can train machine-learning classifiers. By accessing thedifference map tagged with cognitive changes (or any other outcomes ofthe event), datasets of functional changes can be created. With suchdatasets, machine-learning classifiers can be generated to aid in, forexample, the classifications of events, physiological changes to thebrain, connectome differences, etc. One example type of classifier to beused include boosted tree classifiers. In such a case, ensembleclassifiers are trained by building regression trees in a step-wisefashion, using a predetermined loss function to measure error between anin-training model and the tagging provided for the difference maps. Forexample, each step of the step-wise process can add and weigh anaddition function to an ensemble of functions in order to lower theresult of the loss function.

Report-data that includes an explanation of a change in subject healthcaused by the event can be generated using the connectome-difference map428. For example, computing apparatus 206 can access, with or withoutuser direction, a report-template data object that includes a number offields to be completed. Apparatus 206 can complete these fields withdata of the connectome-difference map, data derived from theconnectome-difference map (e.g., aggregate statistics, classificationsof the differences based on classification of previously-describedmachine-learning classifiers), and from other data (e.g., patient name,date information). This report-data can be provided to the patient, sentto a care-giver of the patient, stored in an electronic-medical-recordsmanagement system, etc.

A recommendation for a potential condition can be generated based, atleast in part, on the connectome-difference map 430. For example, withan event that is a disease (e.g., normal pressure hydrocephalus, LewisBody dementia, Alzheimer's disease, Pick's disease, or Creutzfeldt-Jakobdisease), the connectome-difference map can be used to identify changesdue to the disease, therapies used to treat the disease, etc. This canprovide useful information to clinicians, care-givers, and diseaseresearchers.

FIG. 5 shows an example process 500 of generating aconnectome-difference map from connectomes. For example, the process 500can be used by computing apparatus 206 in generating aconnectome-difference map 416, and will be used in this description.Other systems may perform the process 500 or other processes.

The pre-event brain image is accessed 502. For example, computingapparatus 206 can receive, e.g., over a computer network, from aninternal memory, or from a mountable memory, data generated by themedical imager 202 of the patient's brain before the surgery to removethe tumor.

The pre-event connectome is generated from the pre-event brain image504. For example, computing apparatus 206 can submit the pre-event brainimage to a function that receives brain images and outputs connectomesbased on the input image. In some cases, computing apparatus 206 canalso pre-process the input data, post-process the output data, storedata, etc.

The post-event brain image is accessed 506. For example, computingapparatus 206 can receive, e.g., over a computer network, from aninternal memory, or from a mountable memory, data generated by themedical imager 202 of the patient's brain after the surgery to removethe tumor.

The post-event connectome is generated from the post-event brain image508. For example, computing apparatus 206 can submit the post-eventbrain image to a function that receives brain images and outputsconnectomes based on the input image. As will be appreciated, this maybe the same or a different function as that described above. In somecases, computing apparatus 206 can also pre-process the input data,post-process the output data, store data, etc.

Connectome edges are analyzed 510. With the pre-event difference map andthe post-event difference map available, computing apparatus 206 caniterate through the connectomes to determine which edges change frompre-event connectome to post-event connectome.

While edges remain to be analyzed 510, it is determined if a given edgeis in both the pre-event connectome and the post-event connectome, andif they have the same weight 512. In this example, the test for samenesscan include a determination that the difference is less than a thresholdvalue. This can allow for, for example, difference in the imaging due tobiological function, imaging noise, etc. to avoid false identificationof a change that is not caused by a change in the brain due to theevent.

In some cases, the threshold value can be determined by findingdistances from mean under Gaussian distributions of historical datasetsof images or of the weights in the currently-processed dataset. Suchthresholds would reflect “common” or “expected” weights of historicdatasets or current data. In another example, a machine learningclassifier as previously described in this document can provide thethreshold value.

If the edge is found in both connectomes, and if the edge has the sameweight 512, that edge can be excluded from the connectome-difference map514. This represents an edge that did not change, or that changed lessthan a threshold amount, when the surgery was performed. As such,computing apparatus 206 does not record the edge in theconnectome-difference map.

If the edge is not found in both connectomes, or if the edge has adifferent weight 512, the edge is added to the difference map. Forexample, computing apparatus 206 can record the edge with a weight thatis the difference between the pre-event edge and post-event edge, usinga weight of 0 if the edge is not present. This may result in, forexample, an edge weight with a negative value if the connection wasweakened or terminated by the event, and a positive value if the edgewas created or strengthened by the event.

As such, by completing the process 500, computing apparatus 206 cancreate the connectome-difference map from a pre-event image and apost-event image. However, another process may begin with, for example apre-event connectome and a post-event connectome. Other formats for theconnectome-difference map may be used. For example, the pre-event andpost-event connectome may be stored to disk in one format (e.g., aformat that efficiently stores a more-populated data set such as anadjacency matrix) and the connectome-difference map may be stored todisk in a second format (e.g., a format that more efficiently stores aless-populated data set such as a linked-list of edges and weight).

FIG. 6 shows an example process 600 of automated surgery assessment. Forexample, the process 600 can be used by computing apparatus 206 inassessing a surgery plan, and will be used in this description. Othersystems may perform the process 600 or other processes. In one example,the process 600 can be used to assess a surgery plan for tumor removalfor a particular patient. The surgery plan may initially include apoint-of-entry that is near the tumor, but that would require damage toa healthy network. The process 600 can identify such a state and suggesta plan that involves a lengthier traversal through the brain, buttraversing through less healthy networks, resulting is better clinicaloutcomes for the patient overall.

A surgery plan is received 602. For example, computing apparatus 206 canreceive a surgery plan for a second subject that is different than thepatient described above. This surgery plan may include a plan to removea tumor from the brain in a location that is similar, but not identical,to the tumor removed from the first patient.

Events of the surgery plan are identified 604. For example, computingapparatus 206 can identify the plan to remove the second patient'stumor, and may generate data characterizing this as an event. Computingapparatus 206 can determine that the surgery plan is a second event withat least a threshold similarity to the first event based oncharacteristics of the first patient's tumor removal.

Historical information from difference maps is accessed 606. Forexample, computing apparatus 206 may search for all records of allsurgeries similar to the data about the planned surgery. Computingapparatus 206 may receive, for example, specific information about thefirst patient's surgery, or may receive aggregated or otherwisesynthesized data. This can include machine-learning classifiers trainedon a data set that includes a tagged copy of the first patient'ssurgery.

A surgery assessment is generated at least in part based on thehistorical information 608. For example, computing apparatus 206 cangenerate the assessment based on all returned data described above. Thismay include scoring similarities between the planned surgery, andidentifying the most similar. This can include submitting details aboutthe current surgery to a classifier function to receive as output aprediction about the outcome of the surgery.

The surgery plan is returned 610. For example, computing apparatus 206can return a report for the surgery plan that includes an assessmentgenerated, at least in part, on the connectome-difference map. Thisreport can include suggested alterations to the plan, identification ofhigh-risk elements of the plan, information about expected outcomes,etc.

Embodiments of the subject matter and the functional operationsdescribed in this specification can be implemented in digital electroniccircuitry, in tangibly-embodied computer software or firmware, incomputer hardware, including the structures disclosed in thisspecification and their structural equivalents, or in combinations ofone or more of them. Embodiments of the subject matter described in thisspecification can be implemented as one or more computer programs, i.e.,one or more modules of computer program instructions encoded on atangible non-transitory storage medium for execution by, or to controlthe operation of, data processing apparatus. The computer storage mediumcan be a machine-readable storage device, a machine-readable storagesubstrate, a random or serial access memory device, or a combination ofone or more of them. Alternatively or in addition, the programinstructions can be encoded on an artificially-generated propagatedsignal, e.g., a machine-generated electrical, optical, orelectromagnetic signal, that is generated to encode information fortransmission to suitable receiver apparatus for execution by a dataprocessing apparatus.

The term “data processing apparatus” refers to data processing hardwareand encompasses all kinds of apparatus, devices, and machines forprocessing data, including by way of example a programmable processor, acomputer, or multiple processors or computers. The apparatus can alsobe, or further include, special purpose logic circuitry, e.g., an FPGA(field programmable gate array) or an ASIC (application-specificintegrated circuit). The apparatus can optionally include, in additionto hardware, code that creates an execution environment for computerprograms, e.g., code that constitutes processor firmware, a protocolstack, a database management system, an operating system, or acombination of one or more of them.

A computer program, which may also be referred to or described as aprogram, software, a software application, an app, a module, a softwaremodule, a script, or code, can be written in any form of programminglanguage, including compiled or interpreted languages, or declarative orprocedural languages; and it can be deployed in any form, including as astand-alone program or as a module, component, subroutine, or other unitsuitable for use in a computing environment. A program may, but neednot, correspond to a file in a file system. A program can be stored in aportion of a file that holds other programs or data, e.g., one or morescripts stored in a markup language document, in a single file dedicatedto the program in question, or in multiple coordinated files, e.g.,files that store one or more modules, sub-programs, or portions of code.A computer program can be deployed to be executed on one computer or onmultiple computers that are located at one site or distributed acrossmultiple sites and interconnected by a data communication network.

The processes and logic flows described in this specification can beperformed by one or more programmable computers executing one or morecomputer programs to perform functions by operating on input data andgenerating output. The processes and logic flows can also be performedby special purpose logic circuitry, e.g., an FPGA or an ASIC, or by acombination of special purpose logic circuitry and one or moreprogrammed computers.

Computers suitable for the execution of a computer program can be basedon general or special purpose microprocessors or both, or any other kindof central processing unit. Generally, a central processing unit willreceive instructions and data from a read-only memory or a random accessmemory or both. The essential elements of a computer are a centralprocessing unit for performing or executing instructions and one or morememory devices for storing instructions and data. The central processingunit and the memory can be supplemented by, or incorporated in, specialpurpose logic circuitry. Generally, a computer will also include, or beoperatively coupled to receive data from or transfer data to, or both,one or more mass storage devices for storing data, e.g., magnetic,magneto-optical disks, or optical disks. However, a computer need nothave such devices. Moreover, a computer can be embedded in anotherdevice, e.g., a mobile telephone, a personal digital assistant (PDA), amobile audio or video player, a game console, a Global PositioningSystem (GPS) receiver, or a portable storage device, e.g., a universalserial bus (USB) flash drive, to name just a few.

Computer-readable media suitable for storing computer programinstructions and data include all forms of non-volatile memory, mediaand memory devices, including by way of example semiconductor memorydevices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks,e.g., internal hard disks or removable disks; magneto-optical disks; andCD-ROM and DVD-ROM disks.

To provide for interaction with a user, embodiments of the subjectmatter described in this specification can be implemented on a computerhaving a display device, e.g., a CRT (cathode ray tube) or LCD (liquidcrystal display) monitor, for displaying information to the user and akeyboard and a pointing device, e.g., a mouse or a trackball, by whichthe user can provide input to the computer. Other kinds of devices canbe used to provide for interaction with a user as well; for example,feedback provided to the user can be any form of sensory feedback, e.g.,visual feedback, auditory feedback, or tactile feedback; and input fromthe user can be received in any form, including acoustic, speech, ortactile input. In addition, a computer can interact with a user bysending documents to and receiving documents from a device that is usedby the user; for example, by sending web pages to a web browser on auser's device in response to requests received from the web browser.Also, a computer can interact with a user by sending text messages orother forms of message to a personal device, e.g., a smartphone, runninga messaging application, and receiving responsive messages from the userin return.

Embodiments of the subject matter described in this specification can beimplemented in a computing system that includes a back-end component,e.g., as a data server, or that includes a middleware component, e.g.,an application server, or that includes a front-end component, e.g., aclient computer having a graphical user interface, a web browser, or anapp through which a user can interact with an implementation of thesubject matter described in this specification, or any combination ofone or more such back-end, middleware, or front-end components. Thecomponents of the system can be interconnected by any form or medium ofdigital data communication, e.g., a communication network. Examples ofcommunication networks include a local area network (LAN) and a widearea network (WAN), e.g., the Internet.

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other. In someembodiments, a server transmits data, e.g., an HTML page, to a userdevice, e.g., for purposes of displaying data to and receiving userinput from a user interacting with the device, which acts as a client.Data generated at the user device, e.g., a result of the userinteraction, can be received at the server from the device.

While this specification contains many specific implementation details,these should not be construed as limitations on the scope of anyinvention or on the scope of what may be claimed, but rather asdescriptions of features that may be specific to particular embodimentsof particular inventions. Certain features that are described in thisspecification in the context of separate embodiments can also beimplemented in combination in a single embodiment. Conversely, variousfeatures that are described in the context of a single embodiment canalso be implemented in multiple embodiments separately or in anysuitable subcombination. Moreover, although features may be describedabove as acting in certain combinations and even initially be claimed assuch, one or more features from a claimed combination can in some casesbe excised from the combination, and the claimed combination may bedirected to a subcombination or variation of a subcombination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmay be advantageous. Moreover, the separation of various system modulesand components in the embodiments described above should not beunderstood as requiring such separation in all embodiments, and itshould be understood that the described program components and systemscan generally be integrated together in a single software product orpackaged into multiple software products.

Particular embodiments of the subject matter have been described. Otherembodiments are within the scope of the following claims. For example,the actions recited in the claims can be performed in a different orderand still achieve desirable results. As one example, the processesdepicted in the accompanying figures do not necessarily require theparticular order shown, or sequential order, to achieve desirableresults. In some cases, multitasking and parallel processing may beadvantageous.

What is claimed is:
 1. A system for generating medical images, thesystem comprising: one or more processors; and computer memory storinginstructions that, when executed by the one or more processors, causethe one or more processors to perform operations, comprising: accessinga pre-event connectome of a subject brain, the pre-event connectomedefining i) first functional nodes in the subject brain and ii) firstedges that represent connections between the first functional nodesbefore the subject has undergone an event; accessing a post-eventconnectome of the subject brain, the post-event connectome defining i)second functional nodes in the subject brain and ii) second edges thatrepresent connections between the second functional nodes after thesubject has undergone the event; generating a connectome-difference mapdata that records the difference between the pre-event connectome andthe post-event connectome; taking an action based on theconnectome-difference map data; generating a taggedconnectome-difference map data that specifies both theconnectome-difference map data and one or more cognitive changes; addingthe tagged connectome-difference map data to a dataset comprising othertagged connectome-difference map data; and training a machine-learningclassifier using the dataset.
 2. The system of claim 1, wherein theevent is at least one of the group consisting of: a surgical removal ofbrain tissue, a traumatic brain injury, a behavioral intervention forthe subject, advancement of a medical condition that causes cognitivedecline, and learning by the subject.
 3. The system of claim 1, theoperations further comprising: imaging the subject before the event togenerate pre-event brain image data; imaging the subject after the eventto generate post-event brain image data; generating the pre-eventconnectome from the pre-event brain image data; and generating thepost-event connectome from the post-event brain image data.
 4. Thesystem of claim 1, wherein a first functional node and a correspondingsecond functional node represent the same point of brain topology, andwherein the first functional node is in a first location in a skull ofthe subject and the second node is in a second location in the skull ofthe subject do to a change in brain physiology as part of the event. 5.The system of claim 1, the operations further comprising rendering theconnectome-difference map data with an image of the subject's brainhaving connections overlaid.
 6. The system of claim 1, wherein thepre-event connectome and the post-event connectome are topologicallyinvariant.
 7. The system of claim 1, the operations further comprisinggeneration of a proposed therapy plan for the subject based on theconnectome-difference map data.
 8. The system of claim 1, wherein theevent is a disease and the operations further comprise: generating atherapy recommendation based, at least in part, on theconnectome-difference map data.
 9. The system of claim 1, the operationsfurther comprising generating report-data that includes an explanationof a change in subject health caused by the event using theconnectome-difference map data.
 10. A method for generating medicalimages, the method comprising: accessing a pre-event connectome of asubject brain, the pre-event connectome defining i) first functionalnodes in the subject brain and ii) first edges that representconnections between the first functional nodes before the subject hasundergone an event; accessing a post-event connectome of the subjectbrain, the post-event connectome defining i) second functional nodes inthe subject brain and ii) second edges that represent connectionsbetween the second functional nodes after the subject has undergone theevent; generating a connectome-difference map data that records thedifference between the pre-event connectome and the post-eventconnectome; taking an action based on the connectome-difference mapdata; generating a tagged connectome-difference map data that specifiesboth the connectome-difference map data and one or more cognitivechanges; adding the tagged connectome-difference map data to a datasetcomprising other tagged connectome-difference map data; and training amachine-learning classifier using the dataset.
 11. The method of claim10, wherein the event is at least one of the group consisting of: asurgical removal of brain tissue, a traumatic brain injury, a behavioralintervention for the subject, advancement of a medical condition thatcauses cognitive decline, and learning by the subject.
 12. The method ofclaim 10, the method further comprising: imaging the subject before theevent to generate pre-event brain image data; imaging the subject afterthe event to generate post-event brain image data; generating thepre-event connectome from the pre-event brain image data; and generatingthe post-event connectome from the post-event brain image data.
 13. Themethod of claim 10, wherein a first functional node and a correspondingsecond functional node represent the same point of brain topology, andwherein the first functional node is in a first location in the skull ofthe subject and the second node is in a second location in the skull ofthe subject do to a change in brain physiology as part of the event. 14.The method of claim 10, the method further comprising rendering theconnectome-difference map data with an image of the subject's brainhaving connections overlaid.
 15. The method of claim 10, wherein thepre-event connectome and the post-event connectome are topologicallyinvariant.
 16. The method of claim 10, the method further comprisinggeneration of a proposed therapy plan for the subject based on theconnectome-difference map data.
 17. The method of claim 10, wherein theevent is a disease and the method further comprises: generating atherapy recommendation based, at least in part, on theconnectome-difference map data.
 18. The method of claim 10, the methodfurther comprising generating report-data that includes an explanationof a change in subject health caused by the event using theconnectome-difference map data.
 19. Non-transitory Computer-readablemedia tangibly storing instructions that, when executed by one or moreprocessors, cause the one or more processors to perform operations,comprising: accessing a pre-event connectome of a subject brain, thepre-event connectome defining i) first functional nodes in the subjectbrain and ii) first edges that represent connections between the firstfunctional nodes before the subject has undergone an event; accessing apost-event connectome of the subject brain, the post-event connectomedefining i) second functional nodes in the subject brain and ii) secondedges that represent connections between the second functional nodesafter the subject has undergone the event; generating aconnectome-difference map data that records the difference between thepre-event connectome and the post-event connectome; taking an actionbased on the connectome-difference map data; generating a taggedconnectome-difference map data that specifies both theconnectome-difference map data and one or more cognitive changes; addingthe tagged connectome-difference map data to a dataset comprising othertagged connectome-difference map data; and training a machine-learningclassifier using the dataset.